/**
 * 
 */
package com.shifan.phone.service.impl;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.annotation.Resource;

import org.springframework.stereotype.Service;

import com.shifan.phone.common.Tools;
import com.shifan.phone.dao.ProductImageModelMapper;
import com.shifan.phone.model.ProductImageModel;
import com.shifan.phone.service.ProductImageModelService;

/**
 * 产品图片Service接口
 * @author TangLei
 * @date 2018年12月5日 下午4:34:09
 * @version 1.0
 */
@Service
public class ProductImageModelServiceImpl implements ProductImageModelService{
	//注入产品图片Dao接口
	@Resource
	ProductImageModelMapper productImageModelDao;
	
	/**
	 * 删除图片
	 * @param imgId 图片ID
	 * @return 影响的行数
	 */
	@Override
	public int deleteByPrimaryKey(String imgId) {
		// 调用产品图片Dao接口里面的删除的方法
		return productImageModelDao.deleteByPrimaryKey(imgId);
	}

	/**
     * 增加图片（一次性增加所有字段）
     * @param record 图片对象
     * @return 影响的行数
     */
	@Override
	public int insert(ProductImageModel record) {
		//得到一个随机数
		String imgId = Tools.getRandomString();
		//给图片ID赋值
		record.setImgId(imgId);
		// 调用产品图片Dao接口里面的增加的方法
		return productImageModelDao.insert(record);
	}

	/**
     * 增加图片（增加一个或多个字段）
     * @param record 图片对象
     * @return 影响的行数
     */
	@Override
	public int insertSelective(ProductImageModel record) {
		//得到一个随机数
		String imgId = Tools.getRandomString();
		//给图片ID赋值
		record.setImgId(imgId);
		// 调用产品图片Dao接口里面的增加的方法
		return productImageModelDao.insertSelective(record);
	}

	/**
     * 根据ID查询
     * @param imgId 图片ID
     * @return 图片对象
     */
	@Override
	public ProductImageModel selectByPrimaryKey(String imgId) {
		// 调用产品图片Dao接口里面的根据ID查询的方法
		return productImageModelDao.selectByPrimaryKey(imgId);
	}

	/**
     * 修改图片（修改一个或多个字段）
     * @param record 图片对象
     * @return 影响的行数
     */
	@Override
	public int updateByPrimaryKeySelective(ProductImageModel record) {
		// 调用产品图片Dao接口里面的修改的方法
		return productImageModelDao.updateByPrimaryKeySelective(record);
	}

	/**
     * 修改图片（一次性修改所有字段）
     * @param record 图片对象
     * @return 影响的行数
     */
	@Override
	public int updateByPrimaryKey(ProductImageModel record) {
		// 调用产品图片Dao接口里面的修改的方法
		return productImageModelDao.updateByPrimaryKey(record);
	}

	/**
	 * 根据产品ID查询所有图片
	 * @param record 图片对象
	 * @return map集合
	 */
	@Override
	public Map<String, Object> findByProIdAllImage(ProductImageModel record) {
		//创建一个map集合
		Map<String,Object> map = new HashMap<String,Object>();
		//调用产品图片Dao接口里面的根据产品ID查询的方法
		List<ProductImageModel> list = productImageModelDao.findByProIdAllImage(record);
		//调用产品图片Dao接口里面的查询总行数的方法
		int count = productImageModelDao.findCount(record);
		//给map集合赋值
		map.put("code", 0);
		map.put("msg", "");
		map.put("count", count);
		map.put("data", list);
		//返回map集合
		return map;
	}

}
